package com.ruoyi.share.service.impl;

import java.util.List;

import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import com.ruoyi.share.domain.ShareGoodsType;
import com.ruoyi.share.mapper.ShareGoodsTypeMapper;
import com.ruoyi.share.service.IShareGoodsTypeService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

/**
 * 商品类型Service业务层处理
 *
 * @author ruoyi
 * @date 2021-11-16
 */
@Service
public class ShareGoodsTypeServiceImpl implements IShareGoodsTypeService
{
    @Autowired
    private ShareGoodsTypeMapper shareGoodsTypeMapper;

    /**
     * 查询商品类型
     *
     * @param id 商品类型主键
     * @return 商品类型
     */
    @Override
    public ShareGoodsType selectShareGoodsTypeById(Long id)
    {
        return shareGoodsTypeMapper.selectShareGoodsTypeById(id);
    }

    /**
     * 查询商品类型列表
     *
     * @param shareGoodsType 商品类型
     * @return 商品类型
     */
    @Override
    public List<ShareGoodsType> selectShareGoodsTypeList(ShareGoodsType shareGoodsType)
    {
        return shareGoodsTypeMapper.selectShareGoodsTypeList(shareGoodsType);
    }

    /**
     * 分页查询商品列表
     * @param shareGoodsType 商品类型
     * @param pageNum 当前页码
     * @param pageSize 查询条数
     * @return
     */
    @Override
    public List<ShareGoodsType> selectShareGoodsTypeListPage(ShareGoodsType shareGoodsType, Integer pageNum, Integer pageSize) {
        Page<ShareGoodsType> page;
        PageHelper.startPage(pageNum,pageSize);
        page= (Page<ShareGoodsType>) shareGoodsTypeMapper.selectShareGoodsTypeList(shareGoodsType);
        return page;
    }

    /**
     * 新增商品类型
     *
     * @param shareGoodsType 商品类型
     * @return 结果
     */
    @Override
    public int insertShareGoodsType(ShareGoodsType shareGoodsType)
    {

        return shareGoodsTypeMapper.insertShareGoodsType(shareGoodsType);
    }

    /**
     * 修改商品类型
     *
     * @param shareGoodsType 商品类型
     * @return 结果
     */
    @Override
    public int updateShareGoodsType(ShareGoodsType shareGoodsType)
    {
        return shareGoodsTypeMapper.updateShareGoodsType(shareGoodsType);
    }

    /**
     * 批量删除商品类型
     *
     * @param ids 需要删除的商品类型主键
     * @return 结果
     */
    @Override
    public int deleteShareGoodsTypeByIds(Long[] ids)
    {
        return shareGoodsTypeMapper.deleteShareGoodsTypeByIds(ids);
    }

    /**
     * 删除商品类型信息
     *
     * @param id 商品类型主键
     * @return 结果
     */
    @Override
    public int deleteShareGoodsTypeById(Long id)
    {
        return shareGoodsTypeMapper.deleteShareGoodsTypeById(id);
    }
}
